﻿using System;

namespace Badge_Manager.Model
{
    public class Corso
    {
        public Corso()
        {
            Id = Guid.NewGuid();
        }

        public Guid Id { get; set; }

        public string Codice { get; set; }

        public string Nome { get; set; }

        public DateTime DataInizio { get; set; }

        public DateTime? DataFine { get; set; }

        public int NumeroOre { get; set; }

        public override string ToString()
        {
            return Codice + " " + Nome;
        }

        public override bool Equals(object obj)
        {
            if (obj == null) return false;
            if (Object.ReferenceEquals(this, obj)) return true;
            Corso corso = obj as Corso;
            if ((System.Object)corso == null)
            {
                return false;
            }
            if (corso.Nome == this.Nome && corso.Codice == this.Codice
                && this.DataInizio.ToShortDateString() == corso.DataInizio.ToShortDateString()
                && this.NumeroOre == corso.NumeroOre)
            {
                return true;
            }
            return false;
        }

        public override int GetHashCode()
        {
            return base.GetHashCode();
        }
    }
}